package common

import "time"

//计时器
type Timer struct {
	StartTime time.Time
}

//计算 计时器开始到当前时间共耗费多少毫秒
func (t *Timer) SpendMillisecond() (millisecond int64) {
	startTime := t.StartTime.UnixNano() / 1000000 // 当前时间的毫秒  【纳秒/1000=微妙/1000=毫秒/1000=秒】
	endTime := time.Now().UnixNano() / 1000000
	return endTime - startTime
}

//计算 计时器开始到当前时间共耗费多少微妙
func (t *Timer) SpendMicrosecond() (microsecond int64) {
	startTime := t.StartTime.UnixNano() / 1000 // 当前时间的毫秒  【纳秒/1000=微妙/1000=毫秒/1000=秒】
	endTime := time.Now().UnixNano() / 1000
	return endTime - startTime
}

func NewTimer() (timer *Timer) {
	timer = new(Timer)
	timer.StartTime = time.Now()
	return
}
